1. Field of the Invention
This invention relates to mapping applications, and more specifically to a mapping application for rendering pixel imagery on platforms with limited processing power and memory and small display sizes.
2. Description of the Related Art
Hand held devices are rapidly evolving beyond their use as an address book, calendar, note pad, etc. They are merging with other technologies to provide cellular telephone service, email, wireless internet and other applications. Continuing improvements in processor speed, memory, displays and battery power are making the hand held devices a powerful and ubiquitous tool for consumers, business, and the military.
Mapping applications allow users to display and navigate maps on a hand held display using GPS technology. Mapping application software should support the ability to pan around a map, zoom in and out, manipulate navigation objects, and view a tracked position relative to displayed maps in near real-time, e.g. at least 10 frames per second. Military handsets usually have additional direction-finding hardware such as digital compass and accelerometers, which make the application feature of “track-up” (the ability to rotate the map relative to user orientation) desirable for that market. These requirements have to be implemented on a battery-powered handheld device with limited processing power, memory and display size. Therefore, the application software must be very efficient.
Most consumer GPS mapping applications utilize line segment data to represent roads, land-masses, and other boundaries. Consumer applications such as those seen on Garmin, Magellan, or standalone Pocket PC suites are capable of displaying line segment data. However, their frame-rate is limited by the need to redraw all of the line segments on-screen every time the view of the map is changed. These applications alleviate the problem somewhat by preprocessing the line segment data into spatial data structures to skip the clipping step. They also employ several drawing tricks such as only drawing certain line segment data at particular zoom levels, e.g., only draw freeways at distant zoom levels, and only drawing all of the line segment data when the user “stays still”, i.e. doesn't pan or zoom the screen rapidly. Such optimizations allow these applications to achieve a moderate performance level of a few frames per second at best. However, some of the drawing tricks employed can have the effect of temporarily disorienting the user when they are rapidly panning or zooming. Most of these applications do not support rotation.
Military applications and certain consumer applications use detailed imagery, like topographic maps or pictures taken from satellites or surveillance aircraft. These maps typically take the form of large picture imagery, composed of pixel data rather than line segment data. The application software that supports these types of maps must process a lot more data to perform the same display and navigation tasks. Applications such as ESRI's ArcPad and MapServer CE support displaying these types of maps. However, on a platform such as a PDA having limited memory and processing power, the supported frame rate is very slow, a slide show at best. These applications use rendering algorithms that are more efficient at panning than zooming, so they typically limit zoom capability to a “step” zoom between a few constant defined zoom levels so that the slow update rate is less noticeable. This can have the effect of temporarily disorienting the user when “jumping” from one zoom level to the other. In addition, rotating picture maps is a feature that is completely unsupported by any existing PDA mapping tools.
A new approach to the PDA mapping application problem for pixel imagery is needed, especially in the military mapping space. The performance of panning and zooming, particularly important because of the small PDA display size, needs to be increased by at least an order of magnitude to provide near real-time response. Ideally, this would be done without the limitations that the known approaches impose upon the user. A real-time “smooth-zoom” feature is desirable in situations where the user cannot afford to temporarily lose track of their location, such as when driving or operating within a military environment. The desire for a “track-up” feature creates an unmet need to rotate maps, preferably with the same performance as zooming and panning. Finally, there is a need to create an application that supports both line segment data and picture data, and still maintains good performance with both—particularly for the military whose theatres include both natural and urban environments.